<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>STX B+ Tree Template Classes: stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt; Class Template Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">STX B+ Tree Template Classes
   &#160;<span id="projectnumber">0.9</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="a00036.html">stx</a>      </li>
      <li class="navelem"><a class="el" href="a00009.html">btree_set</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pri-attribs">Private Attributes</a>  </div>
  <div class="headertitle">
<div class="title">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="stx::btree_set" -->
<p>Specialized B+ tree template class implementing STL's set container.  
 <a href="a00009.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00034_source.html">btree_set.h</a>&gt;</code></p>

<p><a href="a00057.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00013.html">empty_struct</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The macro BTREE_FRIENDS can be used by outside class to access the B+ tree internals.  <a href="a00013.html#details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef _Key&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">First template parameter: The key type of the B+ tree.  <a href="#a30048df0132910557b9fc6eef098c260"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef _Compare&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Second template parameter: Key comparison function object.  <a href="#af50de559aebda323728e4fa2452bee5f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef _Traits&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ae4153912a1f97b51f7bbad71b3129008">traits</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Third template parameter: Traits object used to define more parameters of the B+ tree.  <a href="#ae4153912a1f97b51f7bbad71b3129008"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef _Alloc&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Fourth template parameter: STL allocator.  <a href="#add9d9415d959dd6280c4c9388463890b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a00013.html">empty_struct</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a00bbef593d8ccf4068c327a83ec63284">data_type</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The empty data_type.  <a href="#a00bbef593d8ccf4068c327a83ec63284"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a2d6c5e2aa366dfea07ab1232d0d96515">value_type</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct the set value_type: the key_type.  <a href="#a2d6c5e2aa366dfea07ab1232d0d96515"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00009.html">btree_set</a>&lt; <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a>, <br class="typebreak"/>
<a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a>, <a class="el" href="a00009.html#ae4153912a1f97b51f7bbad71b3129008">traits</a>, <br class="typebreak"/>
<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Typedef of our own type.  <a href="#aadf0dbca723b094c06361719ea3f9aae"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00001.html">stx::btree</a>&lt; <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a>, <br class="typebreak"/>
<a class="el" href="a00009.html#a00bbef593d8ccf4068c327a83ec63284">data_type</a>, <a class="el" href="a00009.html#a2d6c5e2aa366dfea07ab1232d0d96515">value_type</a>, <br class="typebreak"/>
<a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a>, <a class="el" href="a00009.html#ae4153912a1f97b51f7bbad71b3129008">traits</a>, false, <br class="typebreak"/>
<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>, true &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a446013f241dac77c0b36dd6f410b9026">btree_impl</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation type of the btree_base.  <a href="#a446013f241dac77c0b36dd6f410b9026"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef btree_impl::value_compare&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9fc9960504727883e021ed064f831a9b">value_compare</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Function class comparing two value_type keys.  <a href="#a9fc9960504727883e021ed064f831a9b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00001.html#aa692f5303dd2c4fee4958cbbfc3db5da">btree_impl::size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Size type used to count keys.  <a href="#ab2cb644afc7271107dcceb53e9a86f45"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef btree_impl::tree_stats&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#acb76d4594a31ed8906a25d08f5830f5e">tree_stats</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Small structure containing statistics about the tree.  <a href="#acb76d4594a31ed8906a25d08f5830f5e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef btree_impl::iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">STL-like iterator object for B+ tree items.  <a href="#a7d77049f9bbaaf25ba9edc0635c4627f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef btree_impl::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">STL-like iterator object for B+ tree items.  <a href="#aa5d3d9c7b1218e5680f653fd8f9d8996"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
btree_impl::reverse_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#afb9918dafdccf1eaffa6b6ddc8de0938">reverse_iterator</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">create mutable reverse iterator by using STL magic  <a href="#afb9918dafdccf1eaffa6b6ddc8de0938"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
btree_impl::const_reverse_iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a989d5052f0f73009ad08544bef214038">const_reverse_iterator</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">create constant reverse iterator by using STL magic  <a href="#a989d5052f0f73009ad08544bef214038"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a45a3f6e426f588acd351b258413e2797">btree_set</a> (const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;alloc=<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>())</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor initializing an empty B+ tree with the standard key comparison function.  <a href="#a45a3f6e426f588acd351b258413e2797"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9b12b35835ef7a7bf7414fed7b572119">btree_set</a> (const <a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a> &amp;kcf, const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;alloc=<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>())</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor initializing an empty B+ tree with a special key comparison object.  <a href="#a9b12b35835ef7a7bf7414fed7b572119"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class InputIterator &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00009.html#a158e2ba5a007dcd647928ceb942cdf48">btree_set</a> (InputIterator first, InputIterator last, const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;alloc=<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>())</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor initializing a B+ tree with the range [first,last)  <a href="#a158e2ba5a007dcd647928ceb942cdf48"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class InputIterator &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00009.html#ac949bdeb75eeff239de30007029a7dc4">btree_set</a> (InputIterator first, InputIterator last, const <a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a> &amp;kcf, const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;alloc=<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>())</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor initializing a B+ tree with the range [first,last) and a special key comparison object.  <a href="#ac949bdeb75eeff239de30007029a7dc4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a252d6d1027b0d78a1bec9f63fc68cd82">~btree_set</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees up all used B+ tree memory pages.  <a href="#a252d6d1027b0d78a1bec9f63fc68cd82"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a24321f7bdae8ffc461e48d6331cf25e3">swap</a> (<a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;from)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast swapping of two identical B+ tree objects.  <a href="#a24321f7bdae8ffc461e48d6331cf25e3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#abd0d44790a5ec381c5137b0dea712894">key_comp</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant access to the key comparison object sorting the B+ tree.  <a href="#abd0d44790a5ec381c5137b0dea712894"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a9fc9960504727883e021ed064f831a9b">value_compare</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a2e31a7e133791f60117cfa2e0a323819">value_comp</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant access to a constructed value_type comparison object.  <a href="#a2e31a7e133791f60117cfa2e0a323819"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a603ef9ef20b9f7ad05401d5d6eca2ece">get_allocator</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the base node allocator provided during construction.  <a href="#a603ef9ef20b9f7ad05401d5d6eca2ece"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a52fe59cdd4576d9cc9266e42bca323b2">clear</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees all keys and all nodes of the tree.  <a href="#a52fe59cdd4576d9cc9266e42bca323b2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9521b86ca0d5142a12ae32523c1afb71">begin</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read/data-write iterator that points to the first slot in the first leaf of the B+ tree.  <a href="#a9521b86ca0d5142a12ae32523c1afb71"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93">end</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B+ tree.  <a href="#a8048755a5927b42cce11c19fa8953d93"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ad79866f391eff27bb4da840c31f1b4cd">begin</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read-only constant iterator that points to the first slot in the first leaf of the B+ tree.  <a href="#ad79866f391eff27bb4da840c31f1b4cd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a0e5c8c7a9deff3d2fe75f180d01b911e">end</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read-only constant iterator that points to the first invalid slot in the last leaf of the B+ tree.  <a href="#a0e5c8c7a9deff3d2fe75f180d01b911e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#afb9918dafdccf1eaffa6b6ddc8de0938">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a4f427468ae77255b8f6dfd99f09df632">rbegin</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read/data-write reverse iterator that points to the first invalid slot in the last leaf of the B+ tree.  <a href="#a4f427468ae77255b8f6dfd99f09df632"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#afb9918dafdccf1eaffa6b6ddc8de0938">reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9e1eb2e0b1c92cee93524a002456fbaf">rend</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read/data-write reverse iterator that points to the first slot in the first leaf of the B+ tree.  <a href="#a9e1eb2e0b1c92cee93524a002456fbaf"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a989d5052f0f73009ad08544bef214038">const_reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af6fcf44e17e2c3416228f3f016c46d18">rbegin</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read-only reverse iterator that points to the first invalid slot in the last leaf of the B+ tree.  <a href="#af6fcf44e17e2c3416228f3f016c46d18"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a989d5052f0f73009ad08544bef214038">const_reverse_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a054c601b6f1f281868d8426a61e7020d">rend</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a read-only reverse iterator that points to the first slot in the first leaf of the B+ tree.  <a href="#a054c601b6f1f281868d8426a61e7020d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ad00b79874786c1f20cae2b7e765b9e7a">size</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the number of keys in the B+ tree.  <a href="#ad00b79874786c1f20cae2b7e765b9e7a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a763bf123995cf352f7a08bc43fe0597d">empty</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if there is at least one key in the B+ tree.  <a href="#a763bf123995cf352f7a08bc43fe0597d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ae3338e9685da6924c7be74906b3cf68b">max_size</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the largest possible size of the B+ Tree.  <a href="#ae3338e9685da6924c7be74906b3cf68b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00009.html#acb76d4594a31ed8906a25d08f5830f5e">tree_stats</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ae085f7427a2cb614b5a44c0b545fb86b">get_stats</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a const reference to the current statistics.  <a href="#ae085f7427a2cb614b5a44c0b545fb86b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ac76905f0dc9369d4bb460f6e24bf7363">exists</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Non-STL function checking whether a key is in the B+ tree.  <a href="#ac76905f0dc9369d4bb460f6e24bf7363"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a7ed6ed0ae9f3993cedca7b7d8755be85">find</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to locate a key in the B+ tree and returns an iterator to the key slot if found.  <a href="#a7ed6ed0ae9f3993cedca7b7d8755be85"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a4f4474b05a7a87b0ce0e9a451b25741d">find</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to locate a key in the B+ tree and returns an constant iterator to the key slot if found.  <a href="#a4f4474b05a7a87b0ce0e9a451b25741d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a1dbbf865a4ad5a740419de17946b4a4c">count</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to locate a key in the B+ tree and returns the number of identical key entries found.  <a href="#a1dbbf865a4ad5a740419de17946b4a4c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7">lower_bound</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the B+ tree and returns an iterator to the first pair equal to or greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller.  <a href="#ab9bce6f24080308ab099b2ea41adbba7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a555d7bf9ca80b37707ed8a2f2427bd10">lower_bound</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the B+ tree and returns a constant iterator to the first pair equal to or greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller.  <a href="#a555d7bf9ca80b37707ed8a2f2427bd10"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524">upper_bound</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the B+ tree and returns an iterator to the first pair greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller or equal.  <a href="#ab135d588af2fbdf1631a722b9014c524"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a8cccc9b19e58b5c37f3f40ffd8ae3978">upper_bound</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the B+ tree and returns a constant iterator to the first pair greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller or equal.  <a href="#a8cccc9b19e58b5c37f3f40ffd8ae3978"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::pair&lt; <a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>, <a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af023de2dd94f574e312e8e9f5515bd8c">equal_range</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the B+ tree and returns both <a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7" title="Searches the B+ tree and returns an iterator to the first pair equal to or greater than key...">lower_bound()</a> and <a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524" title="Searches the B+ tree and returns an iterator to the first pair greater than key, or end() if all keys...">upper_bound()</a>.  <a href="#af023de2dd94f574e312e8e9f5515bd8c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::pair&lt; <a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>, <br class="typebreak"/>
<a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ac9dc81052691280fb5fd0b091c08ea0a">equal_range</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Searches the B+ tree and returns both <a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7" title="Searches the B+ tree and returns an iterator to the first pair equal to or greater than key...">lower_bound()</a> and <a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524" title="Searches the B+ tree and returns an iterator to the first pair greater than key, or end() if all keys...">upper_bound()</a>.  <a href="#ac9dc81052691280fb5fd0b091c08ea0a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a7151704256c80cf7bc413b48bea52b75">operator==</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Equality relation of B+ trees of the same type.  <a href="#a7151704256c80cf7bc413b48bea52b75"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a164d435a3f3c3ba2a00a4f4c8f1a91b2">operator!=</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Inequality relation. Based on operator==.  <a href="#a164d435a3f3c3ba2a00a4f4c8f1a91b2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9e637bfa9b10589da6af42ac17048976">operator&lt;</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Total ordering relation of B+ trees of the same type.  <a href="#a9e637bfa9b10589da6af42ac17048976"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a201df2577f43d59328a442f38bbb6e30">operator&gt;</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Greater relation. Based on operator&lt;.  <a href="#a201df2577f43d59328a442f38bbb6e30"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9ce20587b88f126796b6e3784680f66e">operator&lt;=</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Less-equal relation. Based on operator&lt;.  <a href="#a9ce20587b88f126796b6e3784680f66e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#afefedc35ea11d982c716860a921f2a24">operator&gt;=</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Greater-equal relation. Based on operator&lt;.  <a href="#afefedc35ea11d982c716860a921f2a24"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a36ba21d19bf0aa1bc6b2ffb8e4ea8cfc">operator=</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">*** Fast Copy: Assign Operator and Copy Constructors  <a href="#a36ba21d19bf0aa1bc6b2ffb8e4ea8cfc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af37409eb0e66f7d3e80b8ad29470118b">btree_set</a> (const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;other)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor.  <a href="#af37409eb0e66f7d3e80b8ad29470118b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::pair&lt; <a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>, bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#aea42997e9d00ecaabe5e868196c5e8f0">insert</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;x)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempt to insert a key into the B+ tree.  <a href="#aea42997e9d00ecaabe5e868196c5e8f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a9f6d35bf91f3c3c8721a73ce7ebba710">insert</a> (<a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> hint, const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;x)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempt to insert a key into the B+ tree.  <a href="#a9f6d35bf91f3c3c8721a73ce7ebba710"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename InputIterator &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00009.html#a4e7317f32d2855d50b2dd18df22c2f96">insert</a> (InputIterator first, InputIterator last)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Attempt to insert the range [first,last) of iterators dereferencing to key_type into the B+ tree.  <a href="#a4e7317f32d2855d50b2dd18df22c2f96"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename Iterator &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00009.html#a51c3a4976f4bd78315a3c25ab2da5c33">bulk_load</a> (Iterator first, Iterator last)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Bulk load a sorted range [first,last).  <a href="#a51c3a4976f4bd78315a3c25ab2da5c33"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a0cf2d6744a938d3249f58263f68f4802">erase_one</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Erases the key from the set.  <a href="#a0cf2d6744a938d3249f58263f68f4802"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a0b4f57f1b268095b0c33c5623280c4e4">erase</a> (const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;key)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Erases all the key/data pairs associated with the given key.  <a href="#a0b4f57f1b268095b0c33c5623280c4e4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#aea8d759b037157313042df5b6cad4b5b">erase</a> (<a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> iter)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Erase the key/data pair referenced by the iterator.  <a href="#aea8d759b037157313042df5b6cad4b5b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ad0bf46d5da971b9abef66a69bab86b33">erase</a> (<a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>, <a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Erase all keys in the range [first,last).  <a href="#ad0bf46d5da971b9abef66a69bab86b33"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab52f7877dc24a1ada22eb093346926ad">print</a> (std::ostream &amp;os) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Print out the B+ tree structure with keys onto the given ostream.  <a href="#ab52f7877dc24a1ada22eb093346926ad"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab4f43a518a8294478c0a635e6cb822f4">print_leaves</a> (std::ostream &amp;os) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Print out only the leaves via the double linked list.  <a href="#ab4f43a518a8294478c0a635e6cb822f4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af88455baba68554522a181ad2a8dc8fc">verify</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Run a thorough verification of all B+ tree invariants.  <a href="#af88455baba68554522a181ad2a8dc8fc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab482ba64445f71f2c088f0c5ee981ea5">dump</a> (std::ostream &amp;os) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump the contents of the B+ tree out onto an ostream as a binary image.  <a href="#ab482ba64445f71f2c088f0c5ee981ea5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a2f73e4b0a1d3ed2f6e73ef33dea0ac46">restore</a> (std::istream &amp;is)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Restore a binary image of a dumped B+ tree from an istream.  <a href="#a2f73e4b0a1d3ed2f6e73ef33dea0ac46"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#af20d59df4181356a7731674deeeafa0d">leafslotmax</a> = <a class="el" href="a00001.html#ac6c274f39fce8e14f6a881fc1da39cf8">btree_impl::leafslotmax</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Base B+ tree parameter: The number of key slots in each leaf.  <a href="#af20d59df4181356a7731674deeeafa0d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#aa48cfb5c8f935ff286ca7a12e97886db">innerslotmax</a> = <a class="el" href="a00001.html#a78ae296638b9d6961f9101ddf45bf3e0">btree_impl::innerslotmax</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Base B+ tree parameter: The number of key slots in each inner node, this can differ from slots in each leaf.  <a href="#aa48cfb5c8f935ff286ca7a12e97886db"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a16ff8b6fdbbffcbdb50de080d4631015">minleafslots</a> = <a class="el" href="a00001.html#ad8525611bf3b079ca4ab13dbab9b23c0">btree_impl::minleafslots</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computed B+ tree parameter: The minimum number of key slots used in a leaf.  <a href="#a16ff8b6fdbbffcbdb50de080d4631015"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a133181518b3bfeec73537984581cc8ef">mininnerslots</a> = <a class="el" href="a00001.html#aefbcc95b60d5bae8dd7ba9c25e5b6654">btree_impl::mininnerslots</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Computed B+ tree parameter: The minimum number of key slots used in an inner node.  <a href="#a133181518b3bfeec73537984581cc8ef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#aeef1f92bbdd38ed63f588a56db598077">selfverify</a> = <a class="el" href="a00001.html#a598601fa16cfb97b8b60a4eae6bde5ae">btree_impl::selfverify</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Debug parameter: Enables expensive and thorough checking of the B+ tree invariants after each insert/erase operation.  <a href="#aeef1f92bbdd38ed63f588a56db598077"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab3568dade6579ccf9a3f50df18eabb01">debug</a> = <a class="el" href="a00001.html#a224f31a88d50490e14f0f291d70ef2fc">btree_impl::debug</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Debug parameter: Prints out lots of debug information about how the algorithms change the tree.  <a href="#ab3568dade6579ccf9a3f50df18eabb01"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a76a14434ee750af9999bea4e2b657b36">allow_duplicates</a> = <a class="el" href="a00001.html#acd41575a35d1c5d55e955aafc9762454">btree_impl::allow_duplicates</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Operational parameter: Allow duplicate keys in the btree.  <a href="#a76a14434ee750af9999bea4e2b657b36"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00009.html#a446013f241dac77c0b36dd6f410b9026">btree_impl</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a352435bb00a9126a4c72b565553d13b7">tree</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">The contained implementation object.  <a href="#a352435bb00a9126a4c72b565553d13b7"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename _Key, typename _Compare = std::less&lt;_Key&gt;, typename _Traits = btree_default_set_traits&lt;_Key&gt;, typename _Alloc = std::allocator&lt;_Key&gt;&gt;<br/>
class stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;</h3>

<p>Specialized B+ tree template class implementing STL's set container. </p>
<p>Implements the STL set using a B+ tree. It can be used as a drop-in replacement for std::set. Not all asymptotic time requirements are met in theory. The class has a traits class defining B+ tree properties like slots and self-verification. Furthermore an allocator can be specified for tree nodes.</p>
<p>It is somewhat inefficient to implement a set using a B+ tree, a plain B tree would hold fewer copies of the keys.</p>
<p>The set class is derived from the base implementation class btree by specifying an empty struct as data_type. All function are adapted to provide the inner class with placeholder objects. Most tricky to get right were the return type's of iterators which as value_type should be the same as key_type, and not a pair of key and dummy-struct. This is taken case of using some template magic in the btree class. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00063">63</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="add9d9415d959dd6280c4c9388463890b"></a><!-- doxytag: member="stx::btree_set::allocator_type" ref="add9d9415d959dd6280c4c9388463890b" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef _Alloc <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Fourth template parameter: STL allocator. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00080">80</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a446013f241dac77c0b36dd6f410b9026"></a><!-- doxytag: member="stx::btree_set::btree_impl" ref="a446013f241dac77c0b36dd6f410b9026" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00001.html">stx::btree</a>&lt;<a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a>, <a class="el" href="a00009.html#a00bbef593d8ccf4068c327a83ec63284">data_type</a>, <a class="el" href="a00009.html#a2d6c5e2aa366dfea07ab1232d0d96515">value_type</a>, <a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a>, <a class="el" href="a00009.html#ae4153912a1f97b51f7bbad71b3129008">traits</a>, false, <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>, true&gt; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a446013f241dac77c0b36dd6f410b9026">btree_impl</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implementation type of the btree_base. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00109">109</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa5d3d9c7b1218e5680f653fd8f9d8996"></a><!-- doxytag: member="stx::btree_set::const_iterator" ref="aa5d3d9c7b1218e5680f653fd8f9d8996" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef btree_impl::const_iterator <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>STL-like iterator object for B+ tree items. </p>
<p>The iterator points to a specific slot number in a leaf. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00161">161</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a989d5052f0f73009ad08544bef214038"></a><!-- doxytag: member="stx::btree_set::const_reverse_iterator" ref="a989d5052f0f73009ad08544bef214038" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef btree_impl::const_reverse_iterator <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a989d5052f0f73009ad08544bef214038">const_reverse_iterator</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create constant reverse iterator by using STL magic </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00167">167</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a00bbef593d8ccf4068c327a83ec63284"></a><!-- doxytag: member="stx::btree_set::data_type" ref="a00bbef593d8ccf4068c327a83ec63284" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="a00013.html">empty_struct</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a00bbef593d8ccf4068c327a83ec63284">data_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The empty data_type. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00099">99</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7d77049f9bbaaf25ba9edc0635c4627f"></a><!-- doxytag: member="stx::btree_set::iterator" ref="a7d77049f9bbaaf25ba9edc0635c4627f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef btree_impl::iterator <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>STL-like iterator object for B+ tree items. </p>
<p>The iterator points to a specific slot number in a leaf. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00157">157</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="af50de559aebda323728e4fa2452bee5f"></a><!-- doxytag: member="stx::btree_set::key_compare" ref="af50de559aebda323728e4fa2452bee5f" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef _Compare <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Second template parameter: Key comparison function object. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00073">73</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a30048df0132910557b9fc6eef098c260"></a><!-- doxytag: member="stx::btree_set::key_type" ref="a30048df0132910557b9fc6eef098c260" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef _Key <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>First template parameter: The key type of the B+ tree. </p>
<p>This is stored in inner nodes and leaves </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00070">70</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="afb9918dafdccf1eaffa6b6ddc8de0938"></a><!-- doxytag: member="stx::btree_set::reverse_iterator" ref="afb9918dafdccf1eaffa6b6ddc8de0938" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef btree_impl::reverse_iterator <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#afb9918dafdccf1eaffa6b6ddc8de0938">reverse_iterator</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create mutable reverse iterator by using STL magic </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00164">164</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="aadf0dbca723b094c06361719ea3f9aae"></a><!-- doxytag: member="stx::btree_set::self" ref="aadf0dbca723b094c06361719ea3f9aae" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00009.html">btree_set</a>&lt;<a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a>, <a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a>, <a class="el" href="a00009.html#ae4153912a1f97b51f7bbad71b3129008">traits</a>, <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>&gt; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Typedef of our own type. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00105">105</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab2cb644afc7271107dcceb53e9a86f45"></a><!-- doxytag: member="stx::btree_set::size_type" ref="ab2cb644afc7271107dcceb53e9a86f45" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00001.html#aa692f5303dd2c4fee4958cbbfc3db5da">btree_impl::size_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Size type used to count keys. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00115">115</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae4153912a1f97b51f7bbad71b3129008"></a><!-- doxytag: member="stx::btree_set::traits" ref="ae4153912a1f97b51f7bbad71b3129008" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef _Traits <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ae4153912a1f97b51f7bbad71b3129008">traits</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Third template parameter: Traits object used to define more parameters of the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00077">77</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="acb76d4594a31ed8906a25d08f5830f5e"></a><!-- doxytag: member="stx::btree_set::tree_stats" ref="acb76d4594a31ed8906a25d08f5830f5e" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef btree_impl::tree_stats <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#acb76d4594a31ed8906a25d08f5830f5e">tree_stats</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Small structure containing statistics about the tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00118">118</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9fc9960504727883e021ed064f831a9b"></a><!-- doxytag: member="stx::btree_set::value_compare" ref="a9fc9960504727883e021ed064f831a9b" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef btree_impl::value_compare <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a9fc9960504727883e021ed064f831a9b">value_compare</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Function class comparing two value_type keys. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00112">112</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2d6c5e2aa366dfea07ab1232d0d96515"></a><!-- doxytag: member="stx::btree_set::value_type" ref="a2d6c5e2aa366dfea07ab1232d0d96515" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a2d6c5e2aa366dfea07ab1232d0d96515">value_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Construct the set value_type: the key_type. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00102">102</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a45a3f6e426f588acd351b258413e2797"></a><!-- doxytag: member="stx::btree_set::btree_set" ref="a45a3f6e426f588acd351b258413e2797" args="(const allocator_type &amp;alloc=allocator_type())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html">btree_set</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;&#160;</td>
          <td class="paramname"><em>alloc</em> = <code><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>()</code></td><td>)</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor initializing an empty B+ tree with the standard key comparison function. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00180">180</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a9b12b35835ef7a7bf7414fed7b572119"></a><!-- doxytag: member="stx::btree_set::btree_set" ref="a9b12b35835ef7a7bf7414fed7b572119" args="(const key_compare &amp;kcf, const allocator_type &amp;alloc=allocator_type())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html">btree_set</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a> &amp;&#160;</td>
          <td class="paramname"><em>kcf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;&#160;</td>
          <td class="paramname"><em>alloc</em> = <code><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor initializing an empty B+ tree with a special key comparison object. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00187">187</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a158e2ba5a007dcd647928ceb942cdf48"></a><!-- doxytag: member="stx::btree_set::btree_set" ref="a158e2ba5a007dcd647928ceb942cdf48" args="(InputIterator first, InputIterator last, const allocator_type &amp;alloc=allocator_type())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
<div class="memtemplate">
template&lt;class InputIterator &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html">btree_set</a> </td>
          <td>(</td>
          <td class="paramtype">InputIterator&#160;</td>
          <td class="paramname"><em>first</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">InputIterator&#160;</td>
          <td class="paramname"><em>last</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;&#160;</td>
          <td class="paramname"><em>alloc</em> = <code><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor initializing a B+ tree with the range [first,last) </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00195">195</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00484">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::insert()</a>.</p>

</div>
</div>
<a class="anchor" id="ac949bdeb75eeff239de30007029a7dc4"></a><!-- doxytag: member="stx::btree_set::btree_set" ref="ac949bdeb75eeff239de30007029a7dc4" args="(InputIterator first, InputIterator last, const key_compare &amp;kcf, const allocator_type &amp;alloc=allocator_type())" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
<div class="memtemplate">
template&lt;class InputIterator &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html">btree_set</a> </td>
          <td>(</td>
          <td class="paramtype">InputIterator&#160;</td>
          <td class="paramname"><em>first</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">InputIterator&#160;</td>
          <td class="paramname"><em>last</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a> &amp;&#160;</td>
          <td class="paramname"><em>kcf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> &amp;&#160;</td>
          <td class="paramname"><em>alloc</em> = <code><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a>()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor initializing a B+ tree with the range [first,last) and a special key comparison object. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00205">205</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00484">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::insert()</a>.</p>

</div>
</div>
<a class="anchor" id="a252d6d1027b0d78a1bec9f63fc68cd82"></a><!-- doxytag: member="stx::btree_set::~btree_set" ref="a252d6d1027b0d78a1bec9f63fc68cd82" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::~<a class="el" href="a00009.html">btree_set</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Frees up all used B+ tree memory pages. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00213">213</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="af37409eb0e66f7d3e80b8ad29470118b"></a><!-- doxytag: member="stx::btree_set::btree_set" ref="af37409eb0e66f7d3e80b8ad29470118b" args="(const self &amp;other)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html">btree_set</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy constructor. </p>
<p>The newly initialized B+ tree object will contain a copy of all keys. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00474">474</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a9521b86ca0d5142a12ae32523c1afb71"></a><!-- doxytag: member="stx::btree_set::begin" ref="a9521b86ca0d5142a12ae32523c1afb71" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a9521b86ca0d5142a12ae32523c1afb71">begin</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read/data-write iterator that points to the first slot in the first leaf of the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00262">262</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01573">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::begin()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ad79866f391eff27bb4da840c31f1b4cd"></a><!-- doxytag: member="stx::btree_set::begin" ref="ad79866f391eff27bb4da840c31f1b4cd" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a9521b86ca0d5142a12ae32523c1afb71">begin</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read-only constant iterator that points to the first slot in the first leaf of the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00276">276</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01573">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::begin()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a51c3a4976f4bd78315a3c25ab2da5c33"></a><!-- doxytag: member="stx::btree_set::bulk_load" ref="a51c3a4976f4bd78315a3c25ab2da5c33" args="(Iterator first, Iterator last)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
<div class="memtemplate">
template&lt;typename Iterator &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a51c3a4976f4bd78315a3c25ab2da5c33">bulk_load</a> </td>
          <td>(</td>
          <td class="paramtype">Iterator&#160;</td>
          <td class="paramname"><em>first</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Iterator&#160;</td>
          <td class="paramname"><em>last</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Bulk load a sorted range [first,last). </p>
<p>Loads items into leaves and constructs a B-tree above them. The tree must be empty when calling this function. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00513">513</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l02401">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::bulk_load()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a52fe59cdd4576d9cc9266e42bca323b2"></a><!-- doxytag: member="stx::btree_set::clear" ref="a52fe59cdd4576d9cc9266e42bca323b2" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a52fe59cdd4576d9cc9266e42bca323b2">clear</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Frees all keys and all nodes of the tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00252">252</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01527">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::clear()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a1dbbf865a4ad5a740419de17946b4a4c"></a><!-- doxytag: member="stx::btree_set::count" ref="a1dbbf865a4ad5a740419de17946b4a4c" args="(const key_type &amp;key) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a1dbbf865a4ad5a740419de17946b4a4c">count</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Tries to locate a key in the B+ tree and returns the number of identical key entries found. </p>
<p>As this is a unique set, <a class="el" href="a00009.html#a1dbbf865a4ad5a740419de17946b4a4c" title="Tries to locate a key in the B+ tree and returns the number of identical key entries found...">count()</a> returns either 0 or 1. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00371">371</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01822">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::count()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ab482ba64445f71f2c088f0c5ee981ea5"></a><!-- doxytag: member="stx::btree_set::dump" ref="ab482ba64445f71f2c088f0c5ee981ea5" args="(std::ostream &amp;os) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab482ba64445f71f2c088f0c5ee981ea5">dump</a> </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>os</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Dump the contents of the B+ tree out onto an ostream as a binary image. </p>
<p>The image contains memory pointers which will be fixed when the image is restored. For this to work your key_type must be an integral type and contain no pointers or references. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00585">585</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l03843">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::dump()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a763bf123995cf352f7a08bc43fe0597d"></a><!-- doxytag: member="stx::btree_set::empty" ref="a763bf123995cf352f7a08bc43fe0597d" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a763bf123995cf352f7a08bc43fe0597d">empty</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns true if there is at least one key in the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00326">326</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01734">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::empty()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a8048755a5927b42cce11c19fa8953d93"></a><!-- doxytag: member="stx::btree_set::end" ref="a8048755a5927b42cce11c19fa8953d93" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93">end</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00269">269</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01580">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::end()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a0e5c8c7a9deff3d2fe75f180d01b911e"></a><!-- doxytag: member="stx::btree_set::end" ref="a0e5c8c7a9deff3d2fe75f180d01b911e" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93">end</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read-only constant iterator that points to the first invalid slot in the last leaf of the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00283">283</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01580">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::end()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="af023de2dd94f574e312e8e9f5515bd8c"></a><!-- doxytag: member="stx::btree_set::equal_range" ref="af023de2dd94f574e312e8e9f5515bd8c" args="(const key_type &amp;key)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::pair&lt;<a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>, <a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&gt; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#af023de2dd94f574e312e8e9f5515bd8c">equal_range</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches the B+ tree and returns both <a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7" title="Searches the B+ tree and returns an iterator to the first pair equal to or greater than key...">lower_bound()</a> and <a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524" title="Searches the B+ tree and returns an iterator to the first pair greater than key, or end() if all keys...">upper_bound()</a>. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00407">407</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01940">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::equal_range()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ac9dc81052691280fb5fd0b091c08ea0a"></a><!-- doxytag: member="stx::btree_set::equal_range" ref="ac9dc81052691280fb5fd0b091c08ea0a" args="(const key_type &amp;key) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::pair&lt;<a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>, <a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a>&gt; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#af023de2dd94f574e312e8e9f5515bd8c">equal_range</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches the B+ tree and returns both <a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7" title="Searches the B+ tree and returns an iterator to the first pair equal to or greater than key...">lower_bound()</a> and <a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524" title="Searches the B+ tree and returns an iterator to the first pair greater than key, or end() if all keys...">upper_bound()</a>. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00413">413</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01940">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::equal_range()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a0b4f57f1b268095b0c33c5623280c4e4"></a><!-- doxytag: member="stx::btree_set::erase" ref="a0b4f57f1b268095b0c33c5623280c4e4" args="(const key_type &amp;key)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a0b4f57f1b268095b0c33c5623280c4e4">erase</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Erases all the key/data pairs associated with the given key. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00529">529</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l02619">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::erase()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="aea8d759b037157313042df5b6cad4b5b"></a><!-- doxytag: member="stx::btree_set::erase" ref="aea8d759b037157313042df5b6cad4b5b" args="(iterator iter)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a0b4f57f1b268095b0c33c5623280c4e4">erase</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td>
          <td class="paramname"><em>iter</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Erase the key/data pair referenced by the iterator. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00535">535</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l02619">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::erase()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ad0bf46d5da971b9abef66a69bab86b33"></a><!-- doxytag: member="stx::btree_set::erase" ref="ad0bf46d5da971b9abef66a69bab86b33" args="(iterator, iterator)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a0b4f57f1b268095b0c33c5623280c4e4">erase</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Erase all keys in the range [first,last). </p>
<p>This function is currently not implemented by the B+ Tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00543">543</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0cf2d6744a938d3249f58263f68f4802"></a><!-- doxytag: member="stx::btree_set::erase_one" ref="a0cf2d6744a938d3249f58263f68f4802" args="(const key_type &amp;key)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a0cf2d6744a938d3249f58263f68f4802">erase_one</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Erases the key from the set. </p>
<p>As this is a unique set, there is no difference to <a class="el" href="a00009.html#a0b4f57f1b268095b0c33c5623280c4e4" title="Erases all the key/data pairs associated with the given key.">erase()</a>. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00523">523</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l02596">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::erase_one()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ac76905f0dc9369d4bb460f6e24bf7363"></a><!-- doxytag: member="stx::btree_set::exists" ref="ac76905f0dc9369d4bb460f6e24bf7363" args="(const key_type &amp;key) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ac76905f0dc9369d4bb460f6e24bf7363">exists</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Non-STL function checking whether a key is in the B+ tree. </p>
<p>The same as (find(k) != <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a>) or (<a class="el" href="a00009.html#a1dbbf865a4ad5a740419de17946b4a4c" title="Tries to locate a key in the B+ tree and returns the number of identical key entries found...">count()</a> != 0). </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00349">349</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01757">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::exists()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a7ed6ed0ae9f3993cedca7b7d8755be85"></a><!-- doxytag: member="stx::btree_set::find" ref="a7ed6ed0ae9f3993cedca7b7d8755be85" args="(const key_type &amp;key)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a7ed6ed0ae9f3993cedca7b7d8755be85">find</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Tries to locate a key in the B+ tree and returns an iterator to the key slot if found. </p>
<p>If unsuccessful it returns <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a>. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00356">356</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01778">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::find()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a4f4474b05a7a87b0ce0e9a451b25741d"></a><!-- doxytag: member="stx::btree_set::find" ref="a4f4474b05a7a87b0ce0e9a451b25741d" args="(const key_type &amp;key) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a7ed6ed0ae9f3993cedca7b7d8755be85">find</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Tries to locate a key in the B+ tree and returns an constant iterator to the key slot if found. </p>
<p>If unsuccessful it returns <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a>. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00363">363</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01778">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::find()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a603ef9ef20b9f7ad05401d5d6eca2ece"></a><!-- doxytag: member="stx::btree_set::get_allocator" ref="a603ef9ef20b9f7ad05401d5d6eca2ece" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#add9d9415d959dd6280c4c9388463890b">allocator_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a603ef9ef20b9f7ad05401d5d6eca2ece">get_allocator</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the base node allocator provided during construction. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00243">243</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01445">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::get_allocator()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ae085f7427a2cb614b5a44c0b545fb86b"></a><!-- doxytag: member="stx::btree_set::get_stats" ref="ae085f7427a2cb614b5a44c0b545fb86b" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00009.html#acb76d4594a31ed8906a25d08f5830f5e">tree_stats</a>&amp; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ae085f7427a2cb614b5a44c0b545fb86b">get_stats</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return a const reference to the current statistics. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00339">339</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01747">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::get_stats()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="aea42997e9d00ecaabe5e868196c5e8f0"></a><!-- doxytag: member="stx::btree_set::insert" ref="aea42997e9d00ecaabe5e868196c5e8f0" args="(const key_type &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::pair&lt;<a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>, bool&gt; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aea42997e9d00ecaabe5e868196c5e8f0">insert</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Attempt to insert a key into the B+ tree. </p>
<p>The insert will fail if it is already present. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00484">484</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l02106">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::insert2()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

<p>Referenced by <a class="el" href="a00034_source.html#l00195">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::btree_set()</a>, and <a class="el" href="a00034_source.html#l00499">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::insert()</a>.</p>

</div>
</div>
<a class="anchor" id="a9f6d35bf91f3c3c8721a73ce7ebba710"></a><!-- doxytag: member="stx::btree_set::insert" ref="a9f6d35bf91f3c3c8721a73ce7ebba710" args="(iterator hint, const key_type &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aea42997e9d00ecaabe5e868196c5e8f0">insert</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a>&#160;</td>
          <td class="paramname"><em>hint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Attempt to insert a key into the B+ tree. </p>
<p>The iterator hint is currently ignored by the B+ tree insertion routine. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00491">491</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l02106">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::insert2()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a4e7317f32d2855d50b2dd18df22c2f96"></a><!-- doxytag: member="stx::btree_set::insert" ref="a4e7317f32d2855d50b2dd18df22c2f96" args="(InputIterator first, InputIterator last)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
<div class="memtemplate">
template&lt;typename InputIterator &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aea42997e9d00ecaabe5e868196c5e8f0">insert</a> </td>
          <td>(</td>
          <td class="paramtype">InputIterator&#160;</td>
          <td class="paramname"><em>first</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">InputIterator&#160;</td>
          <td class="paramname"><em>last</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Attempt to insert the range [first,last) of iterators dereferencing to key_type into the B+ tree. </p>
<p>Each key/data pair is inserted individually. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00499">499</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00484">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::insert()</a>.</p>

</div>
</div>
<a class="anchor" id="abd0d44790a5ec381c5137b0dea712894"></a><!-- doxytag: member="stx::btree_set::key_comp" ref="abd0d44790a5ec381c5137b0dea712894" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#af50de559aebda323728e4fa2452bee5f">key_compare</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#abd0d44790a5ec381c5137b0dea712894">key_comp</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constant access to the key comparison object sorting the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00227">227</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01395">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::key_comp()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ab9bce6f24080308ab099b2ea41adbba7"></a><!-- doxytag: member="stx::btree_set::lower_bound" ref="ab9bce6f24080308ab099b2ea41adbba7" args="(const key_type &amp;key)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7">lower_bound</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches the B+ tree and returns an iterator to the first pair equal to or greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00378">378</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01855">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::lower_bound()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a555d7bf9ca80b37707ed8a2f2427bd10"></a><!-- doxytag: member="stx::btree_set::lower_bound" ref="a555d7bf9ca80b37707ed8a2f2427bd10" args="(const key_type &amp;key) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab9bce6f24080308ab099b2ea41adbba7">lower_bound</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches the B+ tree and returns a constant iterator to the first pair equal to or greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00386">386</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01855">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::lower_bound()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ae3338e9685da6924c7be74906b3cf68b"></a><!-- doxytag: member="stx::btree_set::max_size" ref="ae3338e9685da6924c7be74906b3cf68b" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ae3338e9685da6924c7be74906b3cf68b">max_size</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the largest possible size of the B+ Tree. </p>
<p>This is just a function required by the STL standard, the B+ Tree can hold more items. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00333">333</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01741">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::max_size()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a164d435a3f3c3ba2a00a4f4c8f1a91b2"></a><!-- doxytag: member="stx::btree_set::operator!=" ref="a164d435a3f3c3ba2a00a4f4c8f1a91b2" args="(const self &amp;other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator!= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Inequality relation. Based on operator==. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00429">429</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a9e637bfa9b10589da6af42ac17048976"></a><!-- doxytag: member="stx::btree_set::operator&lt;" ref="a9e637bfa9b10589da6af42ac17048976" args="(const self &amp;other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&lt; </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Total ordering relation of B+ trees of the same type. </p>
<p>It uses std::lexicographical_compare() for the actual comparison of elements. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00436">436</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a9ce20587b88f126796b6e3784680f66e"></a><!-- doxytag: member="stx::btree_set::operator&lt;=" ref="a9ce20587b88f126796b6e3784680f66e" args="(const self &amp;other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&lt;= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Less-equal relation. Based on operator&lt;. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00448">448</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a36ba21d19bf0aa1bc6b2ffb8e4ea8cfc"></a><!-- doxytag: member="stx::btree_set::operator=" ref="a36ba21d19bf0aa1bc6b2ffb8e4ea8cfc" args="(const self &amp;other)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a>&amp; <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>*** Fast Copy: Assign Operator and Copy Constructors </p>
<p>Assignment operator. All the keys are copied </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00463">463</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a7151704256c80cf7bc413b48bea52b75"></a><!-- doxytag: member="stx::btree_set::operator==" ref="a7151704256c80cf7bc413b48bea52b75" args="(const self &amp;other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator== </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Equality relation of B+ trees of the same type. </p>
<p>B+ trees of the same size and equal elements are considered equal. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00423">423</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a201df2577f43d59328a442f38bbb6e30"></a><!-- doxytag: member="stx::btree_set::operator&gt;" ref="a201df2577f43d59328a442f38bbb6e30" args="(const self &amp;other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&gt; </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Greater relation. Based on operator&lt;. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00442">442</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="afefedc35ea11d982c716860a921f2a24"></a><!-- doxytag: member="stx::btree_set::operator&gt;=" ref="afefedc35ea11d982c716860a921f2a24" args="(const self &amp;other) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&gt;= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Greater-equal relation. Based on operator&lt;. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00454">454</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ab52f7877dc24a1ada22eb093346926ad"></a><!-- doxytag: member="stx::btree_set::print" ref="ab52f7877dc24a1ada22eb093346926ad" args="(std::ostream &amp;os) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab52f7877dc24a1ada22eb093346926ad">print</a> </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>os</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Print out the B+ tree structure with keys onto the given ostream. </p>
<p>This function requires that the header is compiled with BTREE_DEBUG and that key_type is printable via std::ostream. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00556">556</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l03556">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::print()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ab4f43a518a8294478c0a635e6cb822f4"></a><!-- doxytag: member="stx::btree_set::print_leaves" ref="ab4f43a518a8294478c0a635e6cb822f4" args="(std::ostream &amp;os) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab4f43a518a8294478c0a635e6cb822f4">print_leaves</a> </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>os</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Print out only the leaves via the double linked list. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00562">562</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l03564">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::print_leaves()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a4f427468ae77255b8f6dfd99f09df632"></a><!-- doxytag: member="stx::btree_set::rbegin" ref="a4f427468ae77255b8f6dfd99f09df632" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#afb9918dafdccf1eaffa6b6ddc8de0938">reverse_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a4f427468ae77255b8f6dfd99f09df632">rbegin</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read/data-write reverse iterator that points to the first invalid slot in the last leaf of the B+ tree. </p>
<p>Uses STL magic. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00290">290</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01601">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::rbegin()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="af6fcf44e17e2c3416228f3f016c46d18"></a><!-- doxytag: member="stx::btree_set::rbegin" ref="af6fcf44e17e2c3416228f3f016c46d18" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a989d5052f0f73009ad08544bef214038">const_reverse_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a4f427468ae77255b8f6dfd99f09df632">rbegin</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read-only reverse iterator that points to the first invalid slot in the last leaf of the B+ tree. </p>
<p>Uses STL magic. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00304">304</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01601">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::rbegin()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a9e1eb2e0b1c92cee93524a002456fbaf"></a><!-- doxytag: member="stx::btree_set::rend" ref="a9e1eb2e0b1c92cee93524a002456fbaf" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#afb9918dafdccf1eaffa6b6ddc8de0938">reverse_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a9e1eb2e0b1c92cee93524a002456fbaf">rend</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read/data-write reverse iterator that points to the first slot in the first leaf of the B+ tree. </p>
<p>Uses STL magic. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00297">297</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01608">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::rend()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a054c601b6f1f281868d8426a61e7020d"></a><!-- doxytag: member="stx::btree_set::rend" ref="a054c601b6f1f281868d8426a61e7020d" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a989d5052f0f73009ad08544bef214038">const_reverse_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a9e1eb2e0b1c92cee93524a002456fbaf">rend</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a read-only reverse iterator that points to the first slot in the first leaf of the B+ tree. </p>
<p>Uses STL magic. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00311">311</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01608">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::rend()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a2f73e4b0a1d3ed2f6e73ef33dea0ac46"></a><!-- doxytag: member="stx::btree_set::restore" ref="a2f73e4b0a1d3ed2f6e73ef33dea0ac46" args="(std::istream &amp;is)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a2f73e4b0a1d3ed2f6e73ef33dea0ac46">restore</a> </td>
          <td>(</td>
          <td class="paramtype">std::istream &amp;&#160;</td>
          <td class="paramname"><em>is</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Restore a binary image of a dumped B+ tree from an istream. </p>
<p>The B+ tree pointers are fixed using the dump order. For dump and restore to work your key_type must be an integral type and contain no pointers or references. Returns true if the restore was successful. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00594">594</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l03860">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::restore()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ad00b79874786c1f20cae2b7e765b9e7a"></a><!-- doxytag: member="stx::btree_set::size" ref="ad00b79874786c1f20cae2b7e765b9e7a" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#ab2cb644afc7271107dcceb53e9a86f45">size_type</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ad00b79874786c1f20cae2b7e765b9e7a">size</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the number of keys in the B+ tree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00320">320</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00026_source.html#l01728">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::size()</a>, and <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="a24321f7bdae8ffc461e48d6331cf25e3"></a><!-- doxytag: member="stx::btree_set::swap" ref="a24321f7bdae8ffc461e48d6331cf25e3" args="(self &amp;from)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a24321f7bdae8ffc461e48d6331cf25e3">swap</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00009.html#aadf0dbca723b094c06361719ea3f9aae">self</a> &amp;&#160;</td>
          <td class="paramname"><em>from</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Fast swapping of two identical B+ tree objects. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00218">218</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>.</p>

</div>
</div>
<a class="anchor" id="ab135d588af2fbdf1631a722b9014c524"></a><!-- doxytag: member="stx::btree_set::upper_bound" ref="ab135d588af2fbdf1631a722b9014c524" args="(const key_type &amp;key)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a7d77049f9bbaaf25ba9edc0635c4627f">iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524">upper_bound</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches the B+ tree and returns an iterator to the first pair greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller or equal. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00393">393</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>, and <a class="el" href="a00026_source.html#l01898">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::upper_bound()</a>.</p>

</div>
</div>
<a class="anchor" id="a8cccc9b19e58b5c37f3f40ffd8ae3978"></a><!-- doxytag: member="stx::btree_set::upper_bound" ref="a8cccc9b19e58b5c37f3f40ffd8ae3978" args="(const key_type &amp;key) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#aa5d3d9c7b1218e5680f653fd8f9d8996">const_iterator</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab135d588af2fbdf1631a722b9014c524">upper_bound</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00009.html#a30048df0132910557b9fc6eef098c260">key_type</a> &amp;&#160;</td>
          <td class="paramname"><em>key</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Searches the B+ tree and returns a constant iterator to the first pair greater than key, or <a class="el" href="a00009.html#a8048755a5927b42cce11c19fa8953d93" title="Constructs a read/data-write iterator that points to the first invalid slot in the last leaf of the B...">end()</a> if all keys are smaller or equal. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00401">401</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>, and <a class="el" href="a00026_source.html#l01898">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::upper_bound()</a>.</p>

</div>
</div>
<a class="anchor" id="a2e31a7e133791f60117cfa2e0a323819"></a><!-- doxytag: member="stx::btree_set::value_comp" ref="a2e31a7e133791f60117cfa2e0a323819" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a9fc9960504727883e021ed064f831a9b">value_compare</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a2e31a7e133791f60117cfa2e0a323819">value_comp</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constant access to a constructed value_type comparison object. </p>
<p>required by the STL </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00234">234</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>, and <a class="el" href="a00026_source.html#l01402">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::value_comp()</a>.</p>

</div>
</div>
<a class="anchor" id="af88455baba68554522a181ad2a8dc8fc"></a><!-- doxytag: member="stx::btree_set::verify" ref="af88455baba68554522a181ad2a8dc8fc" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#af88455baba68554522a181ad2a8dc8fc">verify</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Run a thorough verification of all B+ tree invariants. </p>
<p>The program aborts via <a class="el" href="a00026.html#a6ac57b9b59dae34aea28cda65b0d14bb" title="Assertion only if BTREE_DEBUG is defined. This is not used in verify().">BTREE_ASSERT()</a> if something is wrong. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00574">574</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>References <a class="el" href="a00034_source.html#l00173">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::tree</a>, and <a class="el" href="a00026_source.html#l03630">stx::btree&lt; _Key, _Data, _Value, _Compare, _Traits, _Duplicates, _Alloc, _UsedAsSet &gt;::verify()</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a76a14434ee750af9999bea4e2b657b36"></a><!-- doxytag: member="stx::btree_set::allow_duplicates" ref="a76a14434ee750af9999bea4e2b657b36" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a76a14434ee750af9999bea4e2b657b36">allow_duplicates</a> = <a class="el" href="a00001.html#acd41575a35d1c5d55e955aafc9762454">btree_impl::allow_duplicates</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Operational parameter: Allow duplicate keys in the btree. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00150">150</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab3568dade6579ccf9a3f50df18eabb01"></a><!-- doxytag: member="stx::btree_set::debug" ref="ab3568dade6579ccf9a3f50df18eabb01" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#ab3568dade6579ccf9a3f50df18eabb01">debug</a> = <a class="el" href="a00001.html#a224f31a88d50490e14f0f291d70ef2fc">btree_impl::debug</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Debug parameter: Prints out lots of debug information about how the algorithms change the tree. </p>
<p>Requires the header file to be compiled with BTREE_DEBUG and the key type must be std::ostream printable. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00147">147</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="aa48cfb5c8f935ff286ca7a12e97886db"></a><!-- doxytag: member="stx::btree_set::innerslotmax" ref="aa48cfb5c8f935ff286ca7a12e97886db" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const unsigned short <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aa48cfb5c8f935ff286ca7a12e97886db">innerslotmax</a> = <a class="el" href="a00001.html#a78ae296638b9d6961f9101ddf45bf3e0">btree_impl::innerslotmax</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Base B+ tree parameter: The number of key slots in each inner node, this can differ from slots in each leaf. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00128">128</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="af20d59df4181356a7731674deeeafa0d"></a><!-- doxytag: member="stx::btree_set::leafslotmax" ref="af20d59df4181356a7731674deeeafa0d" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const unsigned short <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#af20d59df4181356a7731674deeeafa0d">leafslotmax</a> = <a class="el" href="a00001.html#ac6c274f39fce8e14f6a881fc1da39cf8">btree_impl::leafslotmax</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Base B+ tree parameter: The number of key slots in each leaf. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00124">124</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a133181518b3bfeec73537984581cc8ef"></a><!-- doxytag: member="stx::btree_set::mininnerslots" ref="a133181518b3bfeec73537984581cc8ef" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const unsigned short <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a133181518b3bfeec73537984581cc8ef">mininnerslots</a> = <a class="el" href="a00001.html#aefbcc95b60d5bae8dd7ba9c25e5b6654">btree_impl::mininnerslots</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computed B+ tree parameter: The minimum number of key slots used in an inner node. </p>
<p>If fewer slots are used, the inner node will be merged or slots shifted from it's siblings. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00138">138</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a16ff8b6fdbbffcbdb50de080d4631015"></a><!-- doxytag: member="stx::btree_set::minleafslots" ref="a16ff8b6fdbbffcbdb50de080d4631015" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const unsigned short <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a16ff8b6fdbbffcbdb50de080d4631015">minleafslots</a> = <a class="el" href="a00001.html#ad8525611bf3b079ca4ab13dbab9b23c0">btree_impl::minleafslots</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computed B+ tree parameter: The minimum number of key slots used in a leaf. </p>
<p>If fewer slots are used, the leaf will be merged or slots shifted from it's siblings. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00133">133</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="aeef1f92bbdd38ed63f588a56db598077"></a><!-- doxytag: member="stx::btree_set::selfverify" ref="aeef1f92bbdd38ed63f588a56db598077" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const bool <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#aeef1f92bbdd38ed63f588a56db598077">selfverify</a> = <a class="el" href="a00001.html#a598601fa16cfb97b8b60a4eae6bde5ae">btree_impl::selfverify</a><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Debug parameter: Enables expensive and thorough checking of the B+ tree invariants after each insert/erase operation. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00142">142</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

</div>
</div>
<a class="anchor" id="a352435bb00a9126a4c72b565553d13b7"></a><!-- doxytag: member="stx::btree_set::tree" ref="a352435bb00a9126a4c72b565553d13b7" args="" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename _Key , typename _Compare  = std::less&lt;_Key&gt;, typename _Traits  = btree_default_set_traits&lt;_Key&gt;, typename _Alloc  = std::allocator&lt;_Key&gt;&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00009.html#a446013f241dac77c0b36dd6f410b9026">btree_impl</a> <a class="el" href="a00009.html">stx::btree_set</a>&lt; _Key, _Compare, _Traits, _Alloc &gt;::<a class="el" href="a00009.html#a352435bb00a9126a4c72b565553d13b7">tree</a><code> [private]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The contained implementation object. </p>

<p>Definition at line <a class="el" href="a00034_source.html#l00173">173</a> of file <a class="el" href="a00034_source.html">btree_set.h</a>.</p>

<p>Referenced by <a class="el" href="a00034_source.html#l00262">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::begin()</a>, <a class="el" href="a00034_source.html#l00513">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::bulk_load()</a>, <a class="el" href="a00034_source.html#l00252">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::clear()</a>, <a class="el" href="a00034_source.html#l00371">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::count()</a>, <a class="el" href="a00034_source.html#l00585">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::dump()</a>, <a class="el" href="a00034_source.html#l00326">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::empty()</a>, <a class="el" href="a00034_source.html#l00269">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::end()</a>, <a class="el" href="a00034_source.html#l00407">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::equal_range()</a>, <a class="el" href="a00034_source.html#l00529">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::erase()</a>, <a class="el" href="a00034_source.html#l00523">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::erase_one()</a>, <a class="el" href="a00034_source.html#l00349">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::exists()</a>, <a class="el" href="a00034_source.html#l00356">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::find()</a>, <a class="el" href="a00034_source.html#l00243">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::get_allocator()</a>, <a class="el" href="a00034_source.html#l00339">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::get_stats()</a>, <a class="el" href="a00034_source.html#l00484">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::insert()</a>, <a class="el" href="a00034_source.html#l00227">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::key_comp()</a>, <a class="el" href="a00034_source.html#l00378">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::lower_bound()</a>, <a class="el" href="a00034_source.html#l00333">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::max_size()</a>, <a class="el" href="a00034_source.html#l00429">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator!=()</a>, <a class="el" href="a00034_source.html#l00436">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&lt;()</a>, <a class="el" href="a00034_source.html#l00448">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&lt;=()</a>, <a class="el" href="a00034_source.html#l00463">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator=()</a>, <a class="el" href="a00034_source.html#l00423">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator==()</a>, <a class="el" href="a00034_source.html#l00442">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&gt;()</a>, <a class="el" href="a00034_source.html#l00454">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::operator&gt;=()</a>, <a class="el" href="a00034_source.html#l00556">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::print()</a>, <a class="el" href="a00034_source.html#l00562">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::print_leaves()</a>, <a class="el" href="a00034_source.html#l00290">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::rbegin()</a>, <a class="el" href="a00034_source.html#l00297">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::rend()</a>, <a class="el" href="a00034_source.html#l00594">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::restore()</a>, <a class="el" href="a00034_source.html#l00320">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::size()</a>, <a class="el" href="a00034_source.html#l00218">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::swap()</a>, <a class="el" href="a00034_source.html#l00393">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::upper_bound()</a>, <a class="el" href="a00034_source.html#l00234">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::value_comp()</a>, and <a class="el" href="a00034_source.html#l00574">stx::btree_set&lt; _Key, _Compare, _Traits, _Alloc &gt;::verify()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>stx/<a class="el" href="a00034_source.html">btree_set.h</a></li>
</ul>
</div><!-- contents -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Sun May 5 2013 23:38:44 for STX B+ Tree Template Classes by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
